/*
  Copyright (c) 2010 Les Newell. All rights reserved

  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program. If not, see <http://www.gnu.org/licenses/>.
*/


//define the module.
DEFINE_MODULE(Reciever, Module)
//Note the lack of an opening curly bracket.

    enum {PITCH,ROLL,YAW,THROTTLE,AUX1,AUX2,MAX_CHANNELS};
    enum {SW1,SW2,MAX_SW};

    //Only use this to expose sockets and parameters. Do most of your
    //initialisastion in Init()
    Reciever()
    {
        AddSocket("Receiver.Throttle", &m_channels[THROTTLE]);
        AddSocket("Receiver.Roll", &m_channels[ROLL]);
        AddSocket("Receiver.Pitch", &m_channels[PITCH]);
        AddSocket("Receiver.Yaw", &m_channels[YAW]);
        AddSocket("Receiver.Aux.1", &m_channels[AUX1]);
        AddSocket("Receiver.Aux.2", &m_channels[AUX2]);
        AddSocket("Receiver.Switch.1", &m_switches[SW1]);
        AddSocket("Receiver.Switch.2", &m_switches[SW2]);
    }


protected:
    SocketF m_channels[MAX_CHANNELS];
    Socket8 m_switches[MAX_SW];
};


